using System.ComponentModel.DataAnnotations.Schema;
using System.Data.Entity.ModelConfiguration;

namespace QldtSdh.DAL.Models.Mapping
{
	public class ChuongTrinhDaoTaoMap : EntityTypeConfiguration<ChuongTrinhDaoTao>
	{
		public ChuongTrinhDaoTaoMap()
		{
			// Khoá chính
			this.HasKey(t => t.MaChuongTrinhDaoTaoGUID);

			// Các cột
			this.Property(t => t.MaChuongTrinhDaoTaoGUID)
				.IsRequired()
                .HasMaxLength(50);

			this.Property(t => t.MaNganhDaoTaoGUID)
				.IsRequired()
                .HasMaxLength(50);

			this.Property(t => t.TenChuongTrinhDaoTao)
				.IsRequired()
                .HasMaxLength(255);

			// Ánh xạ Property của POCO vào Column của Table
			this.ToTable("ChuongTrinhDaoTao");
			this.Property(t => t.MaChuongTrinhDaoTaoGUID).HasColumnName("MaChuongTrinhDaoTaoGUID");
			this.Property(t => t.MaNganhDaoTaoGUID).HasColumnName("MaNganhDaoTaoGUID");
			this.Property(t => t.TenChuongTrinhDaoTao).HasColumnName("TenChuongTrinhDaoTao");
			this.Property(t => t.SoTinChiTuChonPhaiChonTrongPhanChung).HasColumnName("SoTinChiTuChonPhaiChonTrongPhanChung");
			this.Property(t => t.SoTinChiTuChonPhaiChonTrongPhanCoSo).HasColumnName("SoTinChiTuChonPhaiChonTrongPhanCoSo");
			this.Property(t => t.SoTinChiTuChonPhaiChonTrongPhanChuyenNganh).HasColumnName("SoTinChiTuChonPhaiChonTrongPhanChuyenNganh");
			this.Property(t => t.SoHocKyDaoTao).HasColumnName("SoHocKyDaoTao");
		}
	}
}
